package com.tutu.controller.activity;



import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;

import com.hyphenate.chat.EMClient;
import com.tutu.R;
import com.tutu.constant.InitConst;
import com.tutu.model.Model;
import com.tutu.model.bean.UserInfo;


/**
 * @author 图图 2020/9/29
 *
 * 欢迎页面
 */
public class SplashActivity extends Activity {

   private Handler handler =  new Handler(){
        public void handleMessage(Message msg){
            // 如果当前activity已经退出，不再处理handler的消息，正常返回
            if(isFinishing()){
                return;
            }

            // 判断进入主页面 还是 登陆页面？
            toMainOrLogin();
        }
    };

    private void toMainOrLogin() {
        /*new Thread(){
            public void run(){
                // 判断当前账号是否已经登陆过
                if(EMClient.getInstance().isLoggedInBefore()){
                    // 已登陆

                    // TODO 获取当前登录用户的信息

                    // 参数说明 第一个参数：当前activity  第二个参数：需要跳转到的activity
                    Intent intent = new Intent(SplashActivity.this, MainActivity.class);
                    // 启动跳转
                    startActivity(intent);

                }else{

                    // 没登录
                    Intent intent = new Intent(SplashActivity.this, LoginActivity.class);
                    // 启动跳转
                    startActivity(intent);

                }

                // 结束当前页面
                finish();
            }
        }.start();*/

        Model.getInstance().getGlobalThreadPool().execute(new Runnable() {
            @Override
            public void run() {
                // 判断当前账号是否已经登陆过
                if(EMClient.getInstance().isLoggedInBefore()){
                    // 已登陆
                    // 获取当前登录用户的信息
                    UserInfo user = Model.getInstance().getUserAccountDao().getUserByHxid(EMClient.getInstance().getCurrentUser());
                    if(user == null){
                        // 没登录
                        Intent intent = new Intent(SplashActivity.this, LoginActivity.class);
                        // 启动跳转
                        startActivity(intent);
                    }else {
                        Model.getInstance().loginSuccess(user);
                        // 参数说明 第一个参数：当前activity  第二个参数：需要跳转到的activity
                        Intent intent = new Intent(SplashActivity.this, MainActivity.class);
                        // 启动跳转
                        startActivity(intent);
                    }

                }else{

                    // 没登录
                    Intent intent = new Intent(SplashActivity.this, LoginActivity.class);
                    // 启动跳转
                    startActivity(intent);

                }

                // 结束当前页面
                finish();
            }

        });
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_splash);
        // 发送1.5s的延时消息
        handler.sendMessageDelayed(Message.obtain(), InitConst.INDEX_DELAYED_TIME);
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        // 销毁消息
        handler.removeCallbacksAndMessages(null);
    }

}
